INSERT INTO asm_vend_tutela

SELECT distinct tk.codice_bolletta,tk.codice_utente,TK.CONTRATTO_ESTRATTO,'9999',0,
co.totale_iva,1,
1,1,to_date(null,'ddmmyyyy'),to_date(null,'ddmmyyyy'),null,
f.data_emissione_fatturA,
0,''
 -- to_date (f.data_emissione_fattura;'mm') mese

from db5.fatture f, asm_vend_tutela tk,db5.competenze co
where f.codice_gestione = 'UNRG'
and f.codice_origine_fattura = 'B'
--and f.data_emissione_fattura >= to_date (^data inizio periodo gg/mm/aaaa ;A;Alfanumerico;1^^,'dd/mm/yyyy')
--and f.data_emissione_fattura <= to_date (^data fine periodo gg/mm/aaaa ;A;Alfanumerico;2^^,'dd/mm/yyyy')
and tk.codice_bolletta = f.codice_fattura
and co.codice_gestione = 'UNRG'
and co.codice_origine_competenza = 'B'
and co.codice_competenza = tk.codice_bolletta

union all

SELECT distinct 0,CONTRATTI.codice_utente,CONTRATTI.CODICE_CONTRATTO,'888',
 SUM(CASE WHEN forniture.TIPO_MISURATORE in ('C1','C2','C3',' ') THEN
 FORNITURE.CONSUMO_MEDIO_MENSILE ELSE 0 END )/365    quantita_scaglione,
0,0,
0,0,TO_DATE(CONCAT(DA,'02'),'YYYYMMDD') DATA_FINE_PERIODO,TO_DATE(CONCAT(DA,'01'),'YYYYMMDD') DATA_INIZIO_PERIODO,
NULL,to_date(CONCAT(DA.DA,'01'),'yyyymmdd') DATA_EMISSIONE_FATTURA,
30 gg,''
FROM DB5.CONTRATTI,DB5.FORNITURE_CMM FORNITURE,
(SELECT DISTINCT TO_CHAR (DATA_EMISSIONE_FATTURA,'YYYYMM') DA FROM asm_vend_tutela) DA
WHERE
(STATO_CONTRATTO ='A' OR 
TO_CHAR (DATA_CHIUSURA,'YYYYMM') >=DA.DA)
and TO_CHAR (DATA_stipulazione,'YYYYMM') < DA.DA
AND
(SELECT DISTINCT CONTRATTO_ESTRATTO
FROM ASM_VEND_TUTELA
WHERE CONTRATTI.CODICE_CONTRATTO=CONTRATTO_ESTRATTO 
AND TO_CHAR (DATA_EMISSIONE_FATTURA,'YYYYMM') =DA.DA) IS NULL
AND CONTRATTI.CODICE_GESTIONE=FORNITURE.CODICE_GESTIONE(+)
AND CONTRATTI.CODICE_SERVIZIO=FORNITURE.CODICE_SERVIZIO(+)
AND CONTRATTI.CODICE_CONTRATTO=FORNITURE.CODICE_CONTRATTO(+)



--AND CONTRATTI.CODICE_CONTRATTO IN (54959,54972,55125,10010537,10012360)

GROUP BY
CONTRATTI.codice_utente,CONTRATTI.CODICE_CONTRATTO,
 TO_DATE(CONCAT(DA,'02'),'YYYYMMDD') ,TO_DATE(CONCAT(DA,'01'),'YYYYMMDD') ,
 to_date(CONCAT(DA.DA,'01'),'yyyymmdd')
 